<template>
    <component :is="dragType" v-bind="$attrs" @dragEvent="dragEvent"></component>
</template>

<script>
import dragToEnd from "./dragToEnd";

export default {
    inheritAttrs: false,
    name: "TValidation",
    components: {
        dragToEnd
    },
    props: {
        dragType: {
            type: String,
            default: 'dragToEnd'
        },
    },
    data() {
        return {
            dragReRender: 0,
        }
    },
    methods: {
        // 拖拽事件
        // 将拖拽的事件提交给上层。
        dragEvent(flag) {
            this.$emit('dragEvent', flag)
        },
        // 重新渲染
        // 通过使用 key 值的变化来进行重新的渲染。在考虑使用什么方法进行处理。
        reRender() {
            this.dragReRender++
        }
    }
}
</script>

<style scoped lang="scss" src="@/style/validation/index.scss"></style>
